<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>vue-router</title>
    <!--1.引入相关的库文件-->
    <script src="../lib/vue_2.5.22.js"></script>
    <script type="text/javascript"></script>
</head>
<body>


<!-- 被vm实例所控制的区域-->
<div id="app">

    <div>父组件</div>
    <alert-box>有bug发生</alert-box>
    <alert-box>有一个警告</alert-box>

    <!-- 这里的所有组件标签中嵌套的内容会替换掉slot 如果不传值, 则使用slot中的默认值 -->
    <alert-box></alert-box>
    <alert-box><h2>h2大标题</h2></alert-box>
</div>

<script>


    /**
     * 组件插槽: 父组件向子组件传递内容 [可以是模板信息, 不单单是值]
     */
    Vue.component('alert-box', {
        data: function () {
            return {
                num: 0
            }
        },
        methods: {},
        /**
         * 当组件渲染的时候, 这个<slot>元素会被替换为"组件标签中嵌套的内容"
         * 插槽内可以包含任何模板代码, 包括 HTML
         * #
         * <slot>默认内容</slot>
         */
        template: `
        <div>
        <strong>ERROR:</strong>
        <slot>默认内容</slot>
</div>
        `
    });

    var vue = new Vue({
        // 指定控制的区域
        el: "#app",
        data: {},
        methods: {}
    });


</script>


</body>
</html>